#### Script to do multiple treeMI imputations for the plywood manufacturing industry
### and export the imputed dataset

#### input files:
####	plyf_gooddata.csv
####
#### output files:
####    ply_imputes.csv
####    ply_predicted.csv

require(tree)

#### read in the "good" dataset, in which we have replaced the Census Bureau imputes/edits with missing values
ply_gooddata<-read.csv("plyf_gooddata.csv",header=TRUE)

### Create completed datasets using treeMI:

ply_imputes<-treeMI(ply_gooddata,ITER=5,c(1,0,0,0,0,0,0,0,1,0,0,0,0,0),starter=TRUE,PPDdraw = TRUE, minCut = 5,minDev  = 0.000001, startCut = 5, startDev = 0.000001) 

ply_imputes$impSet$impsetnum <- 1
ply_imputes$PPDsample$impsetnum <- 1

### For the first imputed dataset, create a new file
write.table(ply_imputes$impSet,file="ply_imputes.csv",append=FALSE,sep=",") 
write.table(ply_imputes$PPDsample,file="ply_predicted.csv",append=FALSE,sep=",") 

for (j in 2:500) {

  ply_imputes<-treeMI(ply_gooddata,ITER=5,c(1,0,0,0,0,0,0,0,1,0,0,0,0,0),starter=TRUE,PPDdraw = TRUE, minCut = 5,minDev  = 0.000001, startCut = 5, startDev = 0.000001) 

  ply_imputes$impSet$impsetnum <- j
  ply_imputes$PPDsample$impsetnum <- j

  ### Append the subsequent imputed datasets to the file created for the first dataset

  write.table(ply_imputes$impSet,file="ply_imputes.csv",append=TRUE,sep=",",col.names=FALSE) 
  write.table(ply_imputes$PPDsample,file="ply_predicted.csv",append=TRUE,sep=",",col.names=FALSE) 

}


